The present disclosure relates generally to solid model data manipulation and visualization and, more specifically, to systems and methods for extracting isosurfaces into a splat hierarchy.
Visualization (or point rendering) of workpieces is a necessary function of computer aided solid modeling. Conventionally, visualization includes converting solid or volume data to triangular or other polygonal mesh data. For example, the “marching cubes” algorithm subdivides volume data into a series of small cubes, such that the corner points of the cubes may be examined and an appropriate set of polygons may be generated to replace the cubes based on the examination of the corner points. However, such a process is time-extensive and consumes a substantial amount of computing resources.
Another rendering process utilizes a splat hierarchy. A splat is a computer-generated disk having a radius, center and normal unit vector, such that solid model surfaces may be collectively represented by a large number of splats corresponding to points on or portions of the surfaces. Typically, rendering utilizing such splats employs triangular mesh data as an input, requiring solid volume data (e.g., voxel data) or non-triangular mesh data to be converted to triangular mesh data before splat generation. While providing some improvement over the marching cubes algorithm and other previous rendering techniques, the conversion of the mesh data into a splat hierarchy also requires substantial computing resources.
Accordingly, what is needed in the art is a system and method that addresses the above-discussed issues.